﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Dukous.Domain;

namespace Dukous.Security.Domain
{
    /// <summary>
    /// 对象权限
    /// </summary>
    [Serializable]
    public class SecurityObjectPermission : Entity<long>
    {
        /// <summary>
        /// 获取 / 设置 安全对象
        /// </summary>
        public virtual SecurityObject SecurityObject { get; set; }

        /// <summary>
        /// 获取 / 设置 权限
        /// </summary>
        public virtual Permission Permission { get; set; }

        /// <summary>
        /// 获取 / 设置 是否可继承
        /// </summary>
        public virtual bool Inheritable { get; set; }

        /// <summary>
        /// 获取 / 设置 字段
        /// </summary>
        public virtual IList<SecurityObjectField> Fields { get; set; }

        /// <summary>
        /// 获取 / 设置 用户
        /// </summary>
        public virtual IList<User> Users { get; set; }

        /// <summary>
        /// 获取 / 设置 组
        /// </summary>
        public virtual IList<Group> Groups { get; set; }
    }
}
